package com.zmn.oms.dubbo.dto.zmn.order;

import com.zmn.oms.common.dto.OmsBaseOperator;
import lombok.Data;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * 类描述：取消订单
 *
 * @author liuying
 * @date 2018/11/07 15:06
 */
@Data
@ToString
public class CancelOrderDIO extends OmsBaseOperator implements Serializable {

    /**
     * 订单Id
     */
    @NotNull(message = "订单ID不能为空")
    private Long orderId;

    /**
     * 工单Id
     */
    @NotNull(message = "工单ID不能为空")
    private Long workId;

    /**
     * 用户ID
     */
    @NotNull(message = "用户ID不能为空")
    private Long userId;

    /**
     * 用户姓名
     */
    @NotNull(message = "用户姓名")
    private String userName;

    /**
     * 取消原因
     */
    private String remark;

    /**
     * 取消缘由ID
     */
    private List<Integer> reasonIdList;

    /**
     * 源单号
     */
    private Long originalCode;

    /**
     * 取消缘由
     */
    private Map<Integer, String> reasonMap;

}
